﻿// 3. 使用：克隆而不是 new
var prototype = new DeviceConfig
{
  IpAddress = "192.168.1.1",
  Port = 502,
  Sensors = new List<string> { "温度", "湿度" }
};

// 快速创建多个相似对象
var config1 = prototype.Clone();
var config2 = prototype.Clone();

config1.IpAddress = "192.168.1.2"; // 独立修改

/*==================================================================================*/
// 4. 使用：原型注册表
var registry = new PrototypeRegistry();
registry.Add("Default", prototype);

var config1 = registry.Get("Default"); // 克隆
var config2 = registry.Get("Default"); // 再克隆